package models

//此文件主要是用户、注册表的模型

//用户的表
type User struct {
	UserId   uint64 `json:"user_id"  db:"user_id"`   //用户ID
	UserName string `json:"username"  db:"username"` //用户名称
	PassWord string `json:"password" db:"password"`  //密码
}

//对登陆校验的逻辑实现
func (u User) LoginValidate() (ok bool, errMsg string) { //对用户结构体实现的方法(对用户的登陆进行校验)
	if len(u.UserName) == 0 || len(u.PassWord) == 0 {
		errMsg = "你的用户名或密码不符合登陆要求!"
		return
	}
	return true, ""
}

//注册的表
type RegisterForm struct {
	UserName      string `json:"username" `
	PassWord      string `json:"password" `
	ConfirmPasswd string `json:"confirm_passwd" `
}

//对注册的校验的逻辑实现
func (r RegisterForm) Validate() (ok bool, errMsg string) {
	//当用户的用户名和密码不符合要求的时候
	if len(r.UserName) == 0 || len(r.PassWord) == 0 {
		errMsg = "你的用户名或密码不符合要求"
		return
	}

	if len(r.PassWord) != len(r.ConfirmPasswd) {
		errMsg = "你的密码不匹配"
		return
	}
	return true, ""
}
